亲戚称谓计算器
这是一款很简单的
RN
应用,主要是体验下如何使用RN
去开发一个NativeApp
的过程,除此以外,我尝试使用的Redux
作为这个应用的数据流管理。源代码:https://github.com/lishengzxc/RnRelative
apk:http://lishengzxc.github.io/RnRelative/app-release.apk 暂无iOS版本
应用预览
环境搭建
这里主要说Andorid
环境的搭建,具体细节,参考RN
的官方文档,我这里主要说下,我遇到的问题和关键步骤
如何打开模拟器等简单问题:https://facebook.github.io/react-native/docs/getting-started.html
- 用
brew
安装watchman
和flow
brew
安装android-sdk
管理器和ndk
(ndk
用来启动官方demo)- 配置
android
环境变量 - 安装以下
sdk
- Android SDK Build-tools version 23.0.1
- Android 6.0 (API 23)
- Android Support Repository
- 我开发使用的是
sdk
自带的模拟器,需要安装并配置HAXM
来加速模拟器,不然会很卡- 通过
android-sdk
下载Intel x86 Emulator Accelerator (HAXM installer)
- 安装
HAXM
如果你是通过brew
来安装的android-sdk
,那这个安装文件在这里/usr/local/opt/android-sdk/extras/intel/Hardware_Accelerated_Execution_Manager
, 里面有个.dmg
,安装它,这样你就获得了一个很流畅的模拟器了
- 通过
开始使用ReactNative
1 | $ tnpm install -g react-native-cli |
运行Android应用
1 | $ cd AwesomeProject |
使用你喜欢的文本编辑器打开index.android.js并随便改上几行
按fn+f2
然后选择 Reload JS
就可以看到你的最新修改。
在终端下运行1
adb logcat *:S ReactNative:V ReactNativeJS:V
可以看到你的应用的日志。
运行官方demo(确认已经安装好ndk
)
1 | git clone https://github.com/facebook/react-native |
在这个demo,你可以看见ReactNative提供的所有控件该如何调用,我自己写的东西并没有用到太多的控件,但是和日常web开发对比,有一下体会:
<div>
在RN
里对应的是<View />
- 没有原生的
<button />
,只有<TouchableHighlight />
关于Redux
一直想体验下
Redux
,所以打算在这个RN
里去体验,Redux
更加强调函数式编程,具体介绍请查看官网:
https://github.com/rackt/redux我自己做了一个
ReactJS
和Redux
的todo:https://github.com/lishengzxc/ReactReduxTodo如果你再稍微看下
RnRelative
里面使用Redux
的代码,我想会有更加深刻的理解
注意一点
Until React Native works on top of React instead of shipping a fork of React, you’ll need to keep using React Redux 3.x branch and documentation.
在我写这个RN
应用的时候为止。
页面布局
RN
使用阉割版的flexbox
布局,css的属性支持的也不完全
https://facebook.github.io/react-native/docs/flexbox.html#content
结语
亲戚称谓计算器我觉得只是另一种Todo
,很多的原生能力也没有用到,网络api
也没有用到,但是通过完成这么一个应用,起码对RN
有了进一步理解。
Powered By http://12d.alibaba.net/